"""
变量作用域：变量的作用范围

主要分为：局部变量和全局变量

局部变量：定义在函数体内部的变量，即只在函数体内部生效

局部变量的作用：在函数体内部，临时保存数据，即当函数调用完成后，则销毁局部变量

全局变量：在函数体内、外都能生效的变量，定义在函数外

使用global关键字，可以在函数内部声明变量为全局变量
"""


# 局部变量
def test_a():
    num = 100
    print(num)


test_a()
# print(num)  # NameError: name 'num' is not defined


# 全局变量
a = 18


def test_b():
    a = 25  # 局部变量
    print(a)


test_b()  # 25
print(a)  # 18

# global关键字，在函数内部声明变量为全局变量
b = 18


def test_c():
    global b  # 设置内部的局部变量变为全局变量
    b = 25  # 局部变量
    print(b)


test_c()  # 25
print(b)  # 25